package com.lyf.scm.admin.domain.service;

import com.lyf.scm.common.model.SalesPlanSelectDTO;

import java.util.List;

/**
 * 权限服务
 *
 * @author Martin
 * @date 2020-11-06 15:14
 */
public interface PermissionService {

    /**
     * 获取登录用户的区域权限集合，包括门店
     * @return
     */
    List<SalesPlanSelectDTO> getPermissionAreaList();

    /**
     * 获取登录用户的渠道权限集合
     * 空表示没权限
     * @return
     */
    List<String> getPermissionChannelList();

    /**
     * 获取登录用户的确认等级
     * 空表示没权限，级数说明见{@link ConfirmLevel}
     * @return
     */
    Integer getPermissionLevel();

    enum ConfirmLevel {
        CONFIRM_LEVEL_1(1, "门店"),
        CONFIRM_LEVEL_2(2, "区总"),
        CONFIRM_LEVEL_3(3, "片总"),
        CONFIRM_LEVEL_4(4, "地总");

        int code;
        String desc;

        ConfirmLevel(int code, String desc) {
            this.code = code;
            this.desc = desc;
        }

        public int getCode() {
            return code;
        }

        public String getDesc() {
            return desc;
        }
    }
}
